/*
 * Copyright (C) 2021 The Huawei Device Co., Ltd.
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 * http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 *
 */

package com.oushangfeng.pinnedsectionitemdecoration.callback.datainterface;

import ohos.agp.components.Component;

/**
 * 共用接口
 *
 * @since 2021-03-27
 */
public interface Category {
    /**
     * CategoryItemsCount
     *
     * @return CategoryItemsCount
     */
    int getCategoryItemsCount();

    /**
     * CategoryItemType
     *
     * @param index
     * @return CategoryItemType
     */
    int getCategoryItemType(int index);

    /**
     * ItemVaule
     *
     * @param index
     * @return ItemVaule
     */
    String getItemVaule(int index);

    /**
     * getItemName
     *
     * @param i
     * @return ItemName
     */
    String getItemName(int i);

    /**
     * hasHead
     *
     * @return hasHead
     */
    boolean hasHead();

    /**
     * setItemVaule
     *
     * @param index
     * @param value
     */
    void setItemVaule(int index, String value);

    /**
     * bindComponent
     *
     * @param component
     * @param index
     */
    void bindComponent(Component component, int index);

    /**
     * createComponent
     *
     * @param index
     * @return createComponent
     */
    Component createComponent(int index);
}
